Color image reproduction systems include an input device for obtaining a representation of an original image and an output device for generating a replica of the image. Input and output devices use signals that represent the colors in the image as coordinates in some device dependent color space. The term “color space” refers to an N-dimensional space in which each point corresponds to a particular color. Examples of device-dependent three-dimensional color space include RGB (red (R), green (G) and blue (B)) and CMY (cyan (C), magenta (M) and yellow (Y)). Frequently, it is advantageous to transform device dependent color images into device independent color images. Examples of device independent color spaces include luminance-chrominance color spaces such as CIELAB, YCbCr, and HSV (hue saturation value) space.
In order to provide the correct output, the output device must know in which color space the input image is defined. Similarly, an image processing module that takes as input a color image must know the color space in which the image is defined. Incorrect assumptions on the colorimetry of image data can result in unpredictable and usually undesirable output quality from a color management system. A rather extreme case of this is when the assumed class of color space, e.g, RGB vs. CMY vs. luminance-chrominance, is incorrect. Many file formats encode the color space class in the header. However, a robust color management system must take into account cases where header information is incomplete, missing, or incorrect.